diff --git a/board/tb0229/flash.c b/board/tb0229/flash.c
index 5dea463..e9f6418 100644
--- a/board/tb0229/flash.c
+++ b/board/tb0229/flash.c
@@ -860,7 +860,7 @@
 	}
 
 	for (info = info_first; info <= info_last; ++info) {
-										ulong b_end = info->start[0] + info->size;*//* bank end addr */
+										ulong b_end = info->start[0] + info->size;*/ /* bank end addr */
 /*		short s_end = info->sector_count - 1;
 		for (i=0; i<info->sector_count; ++i) {
 			ulong e_addr = (i == s_end) ? b_end : info->start[i + 1];
@@ -872,7 +872,7 @@
 		}
 	}
 
-*//* finally write data to flash */
+*/ /* finally write data to flash */
 /*	for (info = info_first; info <= info_last && cnt>0; ++info) {
 		ulong len;
 
